Guideline-Based Food Purchase Management

ABSTRACT

Techniques for guideline-based food purchase management are provided. The techniques include generating a personalized set of nutrition guidelines for a user, generating a user profile for the user, wherein the user profile comprises health information and nutrition preferences, and using the personalized set of nutrition guidelines and the user profile to generate a guideline-based shopping list for the user. Techniques for generating location-based food purchase guidance are also provided. The techniques include obtaining a shopping list of food items and a list of stores to be considered in connection with the food items on the shopping list, using the shopping list, list of stores, a store location map and inter-store routing guidance to generate an inter-store shopping route, and generating an in-store shopping route, for each of the stores in the inter-store shopping route, based on the shopping list, intra-store routing guidance and a floor plan for the store.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.13/150,350, filed Jun. 1, 2011, incorporated by reference herein.

FIELD OF THE INVENTION

Embodiments of the invention generally relate to information technology,and, more particularly, to health management.

BACKGROUND OF THE INVENTION

Existing nutrition control guidelines and management approaches includechallenges in being difficult to follow for individuals. For example,many approaches are not personalized, and can have difficulties inlinking nutrition guidelines with a list of food to purchase.Additionally, many existing approaches lack dynamic re-planning of foodlist according to users' preference (making it difficult, for example,to satisfy all members in a family), and lack real-time guidance duringshopping.

SUMMARY OF THE INVENTION

Principles and embodiments of the invention provide techniques forguideline-based food purchase management. An exemplary method (which maybe computer-implemented) for guideline-based food purchase management,according to one aspect of the invention, can include steps ofgenerating a personalized set of one or more nutrition guidelines for auser, generating a user profile for the user, wherein the user profilecomprises health information and one or more nutrition preferences, andusing the personalized set of one or more nutrition guidelines and theuser profile to generate a guideline-based shopping list for the user.

Also, an exemplary method (which may be computer-implemented) forgenerating location-based food purchase guidance, according to oneaspect of the invention, can include steps of obtaining a shopping listof one or more food items and a list of one or more stores to beconsidered in connection with the one or more food items on the shoppinglist, using the shopping list, list of one or more stores, a storelocation map and inter-store routing guidance to generate an inter-storeshopping route, and generating an in-store shopping route, for each ofthe one or more stores in the inter-store shopping route, based on theshopping list of one or more food items, intra-store routing guidanceand a floor plan for the store.

One or more embodiments of the invention or elements thereof can beimplemented in the form of a computer product including a tangiblecomputer readable storage medium with computer useable program code forperforming the method steps indicated. Furthermore, one or moreembodiments of the invention or elements thereof can be implemented inthe form of an apparatus including a memory and at least one processorthat is coupled to the memory and operative to perform exemplary methodsteps. Yet further, in another aspect, one or more embodiments of theinvention or elements thereof can be implemented in the form of meansfor carrying out one or more of the method steps described herein; themeans can include (i) hardware module(s), (ii) software module(s), or(iii) a combination of hardware and software modules; any of (i)-(iii)implement the specific techniques set forth herein, and the softwaremodules are stored in a tangible computer-readable storage medium (ormultiple such media).

These and other objects, features and advantages of the presentinvention will become apparent from the following detailed descriptionof illustrative embodiments thereof, which is to be read in connectionwith the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flow diagram illustrating techniques for guideline-basedfood purchase management, according to an embodiment of the presentinvention;

FIG. 2 is a diagram illustrating system architecture for guideline-basedfood purchase management, according to an embodiment of the presentinvention;

FIG. 3 is a diagram illustrating a shopping list manager, according toan embodiment of the present invention;

FIG. 4 is a diagram illustrating location-based food purchase routeguidance, according to an embodiment of the present invention;

FIG. 5 is a diagram illustrating real-time nutrition compliancetracking, according to an embodiment of the present invention;

FIG. 6 is a flow diagram illustrating techniques for guideline-basedfood purchase management, according to an embodiment of the invention;

FIG. 7 is a flow diagram illustrating techniques for generatinglocation-based food purchase guidance, according to an embodiment of theinvention; and

FIG. 8 is a system diagram of an exemplary computer system on which atleast one embodiment of the invention can be implemented.

DETAILED DESCRIPTION OF EMBODIMENTS

Principles of the invention include a system and techniques for anevidence-based food purchase management mobile application. As detailedherein, in one or more embodiments of the invention, a guideline-basedfood purchase management mobile application can include a personalizednutrition guideline, an evidence-based shopping list creation, alocation-based food purchase guidance, as well as real-time nutritioncompliance tracking.

Nutrition control can often start from food purchase. In currentnutrition control practice, users can be educated and guided withhealthy recipes. For example, users may receive nutrition guidelinessuch as a suggested number of servings of carbohydrates, vegetables, andfruit, as well suggested foods. However, such guidelines are often notpracticable, as difficulties may arise, for example, when buying foodsaccording to the nutrition guideline, especially when food purchasing isoccurring for multiple people and/or members of a family.

One or more embodiments of the invention include a mobile solution thatcan provide food purchase management on a handhold device. With a mobileapplication such as detailed herein, users can create a food shoppinglist according to the availability of selected food markets based onpersonalized nutrition guidelines. Further, during the shopping, one ormore embodiments of the invention include a graphic dashboard thatindicates the progress of confirmation on nutrition guidelines. Furtheryet, users can dynamically adjust the shopping list while stillconforming to nutrition guidelines.

FIG. 1 is a flow diagram illustrating techniques for guideline-basedfood purchase management, according to an embodiment of the presentinvention. Step 102 includes nutrition guideline personalization. Step104 includes user profile creation. Step 106 includes guideline-basedshopping list creation. Step 108 includes location-based food purchaseguidance. Further, step 110 includes real-time nutrition compliancetracking.

FIG. 2 is a diagram illustrating system architecture for guideline-basedfood purchase management, according to an embodiment of the presentinvention. By way of illustration, FIG. 2 depicts nutrition guidelinepersonalization and user profile creation. Specifically, FIG. 2 depictsa user (and/or a user's mobile device) 202, a user profile creationphase 204, a shopping list creation phase 206, a real-time nutritioncompliance tracking phase 208 and a location-based food purchase routeguidance phase 210.

In the user profile creation phase 204, through Web-enabledquestionnaires 212, the system will collect and assess the informationsuch as the following (for example) from users: demographics, personalhealth status, family medical history, and shopping preferences. In oneor more embodiments of the invention, the questionnaires can beconducted, for example, for first-time users on a per family basis. Eachfamily member can also give a personal preference list about whatfood/drink/fruit/etc. he or she likes/dislikes, regardless of nutritionconstraints. The assessment result 214 is used in two aspects. First,the assessment result 214 is used by guideline manager 220 to select anappropriate nutrition guideline 222 from the repository 224. It shouldbe noted that nutrition selection can be evolved according to changes ofperson's wellness condition. For example, based on progression of aperson's chronic disease, the nutrition guideline may need to beadjusted.

Second, the assessment result 214 also provides a user's personalpreference 216 on her/his food intake.

The user profile is created based on selected nutrition guideline 222and preference 216. A user (for example, a family member) can changeoriginal answers anytime in order to modify his or her profile. Once theprofiles are set up, their data will be analyzed by a profile manager218, an evidence-based decision support system, to generate appropriatefood recommendations for each user (for example, family member) and tocompile a shopping list 234 for the users (for example, for an entirefamily) via a shopping list manager 226. Also, profiles can be stored ina personal profile repository 228.

With respect to the guideline-based shopping list generation, one ormore embodiments of the invention include using a food list filter andcategorization mechanism. This includes accessing food market supplylist repository 232 and personalized guidelines, and divides candidatefood into categories such that food in the same category isinterchangeable. Additionally, with user input such as budget, drivingdistances, preferred stores, available coupons from each store, etc.,the shopping list manager 226 uses information in a personal profile(provided by profile manager 218), and accesses a nutrition factdatabase 230 and a food market supply list repository 232 to generateoptimized shopping list 234.

Additionally, as detailed herein, FIG. 2 depicts a real-time nutritioncompliance tracking phase 208, which includes the use of a Food and DrugAdministration (FDA) nutrition database 236 to make any desirednutrition adjustments 240, a customer review repository 238 used inconjunction with customer feedback 242 and a quick checkout component244. Also, as noted, FIG. 2 depicts a location-based food purchase routeguidance phase 210 which includes a shopping route planning component246 and a food provider and store database 248.

FIG. 3 is a diagram illustrating a shopping list manager, according toan embodiment of the present invention. By way of illustration in FIG.3, guideline-based shopping list generation includes a user 302interactively selecting items 304 to purchase, with a food compliancereport 336 updated in real time while the shopping list manager 308provides food suggestions 344 to the user.

As depicted in FIG. 3, a food list filter and categorization manager 322accesses a food market supply list repository 316 and uses personalizednutrition guidelines 326 and preference 324 specified in a user profileto filter out foods that are not suitable for the user(s). For thesegood candidate items, the system divides items into categories such thatitems within the same category are replaceable (for example, the foodshave similar combination of nutrients but with different flavors/price).By way of example, both milk and cheese are high in calcium, but theirfat/salt content might be different.

Based on candidate items and categorization 328, the users caninteractively select items. A user interface (UI) can show multiple barsof multiple types, such as one for the minimum amount of necessities(for example, folic acid for pregnant women) and one for the maximumamount of avoidances (for example, sugar for diabetes patients). Basedon the constraints 306 on nutrition and/or budget provided to theshopping list optimizer component 314, the user is asked to makeselections 304 in each category from a list of available items (forexample, to select fruits from apples, oranges, bananas, avocados,etc.). These items can be shown partly based the preference list.Preferred items can be shown, for example, with a highlighted color orordered earlier so it is easier for users to select them. Here, thesystem relies on a nutrition fact calculator 338 (which receives inputfrom a nutrition fact database 320) that computes total nutrition fact342 based on the provided food list 340. The total nutrition fact 342 isprovided to the food selection manager 310, which interacts with thenutrition guideline visualization manager 312 to create a visualizedreport to indicate a healthy choice of food. The food selection manager310 also ultimately outputs the shopping list 346.

During the food list creation, the food selection manager 310 also sendstotal nutritional fact 332 and food list 334 to a nutrition guidelineengine 330 (which receives nutrition guidelines 318) to generate acompliance report 336, in order to give awareness of compliance.

Each time a user makes a selection, measurements are updated based onthe nutrition in the chosen item. The changes in current necessities andavoidances can help the user make further selections, indicating howmuch necessities he or she still needs, or if he or she has gone beyondthe limit of avoidances. In such cases, the UI can give suggestionsabout which items to choose/remove.

FIG. 4 is a diagram illustrating location-based food purchase routeguidance, according to an embodiment of the present invention. Given ashopping list 404 and a list of stores in the shopping list (as well as,in one or more embodiments of the invention user preference 406), aninter-store planner 408 plans the optimum shopping route based onadditional input such as a store location map 412 and other inter-storerouting guidance 410. Users 402 have multiple options in route planning,such as, for example, the shortest path passing all stores, visitingfavorite stores first, and visiting stores with lower price first. Somegeneral guidelines (such as depicted via component 410) are applied toall options (for example, always buy frozen/hot food at the end of ashopping trip). Accordingly, the inter-store planner 408 outputs aninter-store routing plan 414.

The system can also alert users based on their locations. For instance,when a user is passing by a store on the list, his/her phone will remindhim/her by audio/visual message.

Additionally, when a user enters a store, the intra-store planner 416plans his/her in-store route 422 based on the shopping list 404 and thestore's floor plan 420. There are also multiple guidelines 418 for thisroute planning, such as, for example, the shortest path passing allitems on the shopping list, picking-up frozen/hot food last, picking-upheavy items last, picking-up bulky items first, exiting through theshortest checkout queue if the store provides real-time information onthe queue length, etc. Users can give different preferences 406 todifferent guidelines.

During the shopping process, users can scan barcodes of items (forexample, items from the shopping list 426) via a barcode-based shoppingcart tracker 424 (using, for example, a mobile phone application) andcheck price and nutrition facts (using information provided by anutrition fact database 428). Such a mobile phone application can alsotrack the total cost, etc. During checkout, the barcode-based shoppingcart tracker 424 can provide the shopping cart list 430 to a checkoutassistant component 432. Further, users can show coupons on smart phonesto cashiers, and the checkout assistant can help users to verify if thecheckout process is correct.

FIG. 5 is a diagram illustrating real-time nutrition compliancetracking, according to an embodiment of the present invention. During afood purchase, one or more embodiments of the invention can also helpend-users to make ad-hoc decisions based on nutrition compliance status.For example, a user may pickup an item which is not in the generatedshopping list. In such a case, the system will generate new visualizedcompliance report and may automatically adjust the item list with theitem that is yet to be picked-up.

Accordingly, as depicted in FIG. 5, one or more embodiments of theinvention include run-time nutrition adjustment by barcode reading usinga mobile device 504. When a user (family member) goes shopping with agenerated shopping list as detailed herein, he/she might find some newproducts that are not on the shopping list, but he/she would like toknow if such a product could be a proper substitution to one existing onthe list. The barcode reader component in the system can quickly scanthe desired product, obtain the barcode 502, and then query locally orremotely the nutrition facts 506 about this product from a nutritiondatabase 508. Based on the queried nutrition facts 506, a nutritionanalysis can be conducted and conclude if the new product is a propersubstitution. If not, a suggestion/recommendation can be made if otheritems combined with this new product might be a good combined nutritionsolution.

Also, under some circumstances, a new (or a proper substitution) productcan match up to the nutrition requirements calculated by the system,even though its custom review/feedback may not as positive as expected.This information might be very useful, but not always be available tothe shopper when he/she is shopping inside a store. As such, by readingthe barcode 502, such information can be queried locally or remotely byone or more embodiments of the invention and be prompted to the shopperas decision assistance.

Additionally, a barcode reader component can also help the shopper tocheck-out. For example, as the shopper goes into a store, the store'sprice database (DB) can be synced-up with the shopper's local DB on hisor her mobile device 504. Every time the shopper scans a product (item)on the shopping list, the item will be moved to a shopping-cart (on themobile device), and the price of the item will be queried locally andadded to a total amount. When the shopper finishes his/her task, he/shecould self-check-out and pay the amount via modern mobile paymentsystem, such as near field communication (NFC), etc.

Further, one or more embodiments of the invention includes trackingusers' running/walking distance based on global positioning system (GPS)and accelerometer readings. Based on GPS, a mobile phone application candetect if a user is moving or stationary, how fast he/she is moving, andfor how far a distance. Based on accelerometer, the mobile phoneapplication can detect if the user is driving, walking, climbing stairs,or running. Then the mobile phone application can calculate how muchcalories the user consumes during these activities.

One or more embodiments of the invention (via a mobile phoneapplication, as detailed herein) can also track users' activities ingyms or other exercise venues. For example, running/walking ontreadmills or eclipse machines, and climbing on stair machines can betracked by accelerometer via a body sensor 530 (as described above).When users use weight machines, they can take pictures of the machines'barcodes, labels, or just the machines. The mobile phone applicationsearches for the machines' profiles based on the pictures. Also, userscan easily enter the amount of exercise they do on these machines, forinstance, how many lifts or push-ups on the machines. The mobile phoneapplication can calculate users' calorie consumption during theseactivities based on the collected information.

Users can also use the mobile phone application to track daily nutritionintake. Before each meal, the user can take pictures of the food he orshe will eat using a smart phone 504. The mobile phone application thensends the pictures to backend servers and gets back nutrition facts ofthe meals. Users can also input this information manually any time onthe mobile phone application or to a web-based interface on computers.For example, the mobile phone application can provide relevant input toa monitoring module 510, which will utilize a nutrition database 512, acritical body measurement database 514 and an exercise measurementdatabase 516 to provide pattern analysis 518, calories nutritionmeasurement 520 and feedback analysis 522, as well as ultimately providefeedback 524 to the mobile device.

Further, based on users' wellness status and nutrition intake, one ormore embodiments of the invention can also generate and updatesystematic exercise plans for users. The mobile phone application willremind users to do exercises based on the plans.

FIG. 6 is a flow diagram illustrating techniques for guideline-basedfood purchase management (for example, implemented on a handheld mobiledevice), according to an embodiment of the present invention. Step 602includes generating a personalized set of one or more nutritionguidelines for a user. This step can be carried out, for example, usinga guideline manager module. Step 604 includes generating a user profilefor the user, wherein the user profile comprises health information andone or more nutrition preferences. This step can be carried out, forexample, using a profile manager module.

Generating a personalized set of nutrition guidelines and generating auser profile include using Web-enabled questionnaires to collect andassess information pertaining to the user (such as, for example,demographics, personal health status, family medical history, shoppingpreferences, etc.). Generating a personalized set of nutritionguidelines further includes using an assessment of the information toselect an appropriate set of one or more nutrition guidelines from anutrition guideline repository. Additionally, generating a user profilefurther includes using an assessment of the information and theappropriate set of nutrition guidelines to generate the user profile.

Step 606 includes using the personalized set of one or more nutritionguidelines and the user profile to generate a guideline-based shoppinglist for the user. This step can be carried out, for example, using ashopping list manager module. Using the personalized set of nutritionguidelines and the user profile to generate a guideline-based shoppinglist includes using information pertaining to availability of one ormore selected food markets based on the personalized set of nutritionguidelines. Also, using the personalized set of nutrition guidelines andthe user profile to generate a guideline-based shopping list includesaccessing a food market supply list repository and dividing candidatefood into one or more categories such that food in a same category isinterchangeable.

Additionally generating the guideline-based shopping list furtherincludes using additional user input pertaining to user budget, traveldistance of one or more stores, user preference of one or more stores,and available coupons from one or more stores, etc. Generating theguideline-based shopping list further includes facilitating a user tointeractively select one or more items to purchase, and updating a foodcompliance report in real-time and providing one or more foodsuggestions to the user based on the selected items. Updating a foodcompliance report in real-time can include using a nutrition factcalculator to compute a total nutrition fact based on the selected itemsand input from a nutrition fact database.

Further, using the personalized set of nutrition guidelines and the userprofile to generate a guideline-based shopping list can includeaccessing a food market supply list repository and filtering out one ormore foods that are not suitable for the user.

FIG. 7 is a flow diagram illustrating techniques for generatinglocation-based food purchase guidance, according to an embodiment of thepresent invention. Step 702 includes obtaining a shopping list of one ormore food items and a list of one or more stores to be considered inconnection with the one or more food items on the shopping list. Step704 includes using the shopping list, list of one or more stores, astore location map and inter-store routing guidance to generate aninter-store shopping route. This step can be carried out, for example,using an inter-store planner module.

Step 706 includes generating an in-store shopping route, for each of theone or more stores in the inter-store shopping route, based on theshopping list of one or more food items, intra-store routing guidanceand a floor plan for the store. This step can be carried out, forexample, using an intra-store planner module. Guidelines for intra-storeroute planning can include, for example, the shortest path passing allitems on the shopping list, picking-up frozen/hot food last, picking-upheavy items last, picking-up bulky items first, exiting through theshortest checkout queue if the store provides real-time information onthe queue length, etc.

Generating an in-store shopping route further includes using one or moreuser preferences in connection with the intra-store guidance.

The techniques depicted in FIG. 7 can additionally include obtaining oneor more user preferences in connection with the one or more stores.Additionally, one or more embodiments of the invention can includealerting a user of shopping information based on locations of the user.

Also, the techniques depicted in FIG. 7 can include using a user-scannedbarcode of an item during shopping, via a barcode-based shopping carttracker module, to check price and one or more nutrition facts of theitem. Using a user-scanned barcode of an item during shopping to checkone or more nutrition facts of the item includes tracking real-timenutrition compliance for a user, as well as using the nutrition facts ofthe item to suggest a substitute item.

Using a user-scanned barcode of an item during shopping further includestracking a total cost of one or more selected items. Also, one or moreembodiments of the invention include using the barcode-based shoppingcart tracker module during checkout to provide a shopping cart list to acheckout assistant module along with any coupons to be used to verify ifthe checkout is correct.

The techniques depicted in FIG. 6 and FIG. 7 can also, as describedherein, include providing a system, wherein the system includes distinctsoftware modules, each of the distinct software modules being embodiedon a tangible computer-readable recordable storage medium. All themodules (or any subset thereof) can be on the same medium, or each canbe on a different medium, for example. The modules can include any orall of the components shown in the figures. In one or more embodiments,the modules include a guideline manager module, a profile managermodule, a shopping list manager module, an inter-store planner module,and an intra-store planner module that can run, for example on one ormore hardware processors. The method steps can then be carried out usingthe distinct software modules of the system, as described above,executing on the one or more hardware processors. Further, a computerprogram product can include a tangible computer-readable recordablestorage medium with code adapted to be executed to carry out one or moremethod steps described herein, including the provision of the systemwith the distinct software modules.

Additionally, the techniques depicted in FIG. 6 and FIG. 7 can beimplemented via a computer program product that can include computeruseable program code that is stored in a computer readable storagemedium in a data processing system, and wherein the computer useableprogram code was downloaded over a network from a remote data processingsystem. Also, in one or more embodiments of the invention, the computerprogram product can include computer useable program code that is storedin a computer readable storage medium in a server data processingsystem, and wherein the computer useable program code are downloadedover a network to a remote data processing system for use in a computerreadable storage medium with the remote system.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method or computer programproduct. Accordingly, aspects of the present invention may take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present invention may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

One or more embodiments of the invention, or elements thereof, can beimplemented in the form of an apparatus including a memory and at leastone processor that is coupled to the memory and operative to performexemplary method steps.

One or more embodiments can make use of software running on a generalpurpose computer or workstation. With reference to FIG. 8, such animplementation might employ, for example, a processor 802, a memory 804,and an input/output interface formed, for example, by a display 806 anda keyboard 808. The term “processor” as used herein is intended toinclude any processing device, such as, for example, one that includes aCPU (central processing unit) and/or other forms of processingcircuitry. Further, the term “processor” may refer to more than oneindividual processor. The term “memory” is intended to include memoryassociated with a processor or CPU, such as, for example, RAM (randomaccess memory), ROM (read only memory), a fixed memory device (forexample, hard drive), a removable memory device (for example, diskette),a flash memory and the like. In addition, the phrase “input/outputinterface” as used herein, is intended to include, for example, one ormore mechanisms for inputting data to the processing unit (for example,mouse), and one or more mechanisms for providing results associated withthe processing unit (for example, printer). The processor 802, memory804, and input/output interface such as display 806 and keyboard 808 canbe interconnected, for example, via bus 810 as part of a data processingunit 812. Suitable interconnections, for example via bus 810, can alsobe provided to a network interface 814, such as a network card, whichcan be provided to interface with a computer network, and to a mediainterface 816, such as a diskette or CD-ROM drive, which can be providedto interface with media 818.

Accordingly, computer software including instructions or code forperforming the methodologies of the invention, as described herein, maybe stored in one or more of the associated memory devices (for example,ROM, fixed or removable memory) and, when ready to be utilized, loadedin part or in whole (for example, into RAM) and implemented by a CPU.Such software could include, but is not limited to, firmware, residentsoftware, microcode, and the like.

A data processing system suitable for storing and/or executing programcode will include at least one processor 802 coupled directly orindirectly to memory elements 804 through a system bus 810. The memoryelements can include local memory employed during actual implementationof the program code, bulk storage, and cache memories which providetemporary storage of at least some program code in order to reduce thenumber of times code must be retrieved from bulk storage duringimplementation.

Input/output or I/O devices (including but not limited to keyboards 808,displays 806, pointing devices, and the like) can be coupled to thesystem either directly (such as via bus 810) or through intervening I/Ocontrollers (omitted for clarity).

Network adapters such as network interface 814 may also be coupled tothe system to enable the data processing system to become coupled toother data processing systems or remote printers or storage devicesthrough intervening private or public networks. Modems, cable modem andEthernet cards are just a few of the currently available types ofnetwork adapters.

As used herein, including the claims, a “server” includes a physicaldata processing system (for example, system 812 as shown in FIG. 8)running a server program. It will be understood that such a physicalserver may or may not include a display and keyboard.

As noted, aspects of the present invention may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon. Anycombination of one or more computer readable medium(s) may be utilized.The computer readable medium may be a computer readable signal medium ora computer readable storage medium. A computer readable storage mediummay be, for example, but not limited to, an electronic, magnetic,optical, electromagnetic, infrared, or semiconductor system, apparatus,or device, or any suitable combination of the foregoing. Media block 818is a non-limiting example. More specific examples (a non-exhaustivelist) of the computer readable storage medium would include thefollowing: an electrical connection having one or more wires, a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), an optical fiber, a portable compact disc read-onlymemory (CD-ROM), an optical storage device, a magnetic storage device,or any suitable combination of the foregoing. In the context of thisdocument, a computer readable storage medium may be any tangible mediumthat can contain, or store a program for use by or in connection with aninstruction execution system, apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, radio frequency (RF), etc., or anysuitable combination of the foregoing.

Computer program code for carrying out operations for aspects of thepresent invention may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The flowchart and block diagrams in the figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, component, segment,or portion of code, which comprises one or more executable instructionsfor implementing the specified logical function(s). It should also benoted that, in some alternative implementations, the functions noted inthe block may occur out of the order noted in the figures. For example,two blocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

It should be noted that any of the methods described herein can includean additional step of providing a system comprising distinct softwaremodules embodied on a computer readable storage medium; the modules caninclude, for example, any or all of the components shown in the figuresdetailed herein and corresponding descriptions thereof. The method stepscan then be carried out using the distinct software modules and/orsub-modules of the system, as described above, executing on one or morehardware processors 802. Further, a computer program product can includea computer-readable storage medium with code adapted to be implementedto carry out one or more method steps described herein, including theprovision of the system with the distinct software modules.

In any case, it should be understood that the components illustratedherein may be implemented in various forms of hardware, software, orcombinations thereof; for example, application specific integratedcircuit(s) (ASICS), functional circuitry, one or more appropriatelyprogrammed general purpose digital computers with associated memory, andthe like. Given the teachings of the invention provided herein, one ofordinary skill in the related art will be able to contemplate otherimplementations of the components of the invention.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms “a,” “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present invention has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the invention. Theembodiment was chosen and described in order to best explain theprinciples of the invention and the practical application, and to enableothers of ordinary skill in the art to understand the invention forvarious embodiments with various modifications as are suited to theparticular use contemplated.

At least one embodiment of the invention may provide one or morebeneficial effects, such as, for example, evidence-based shopping listcreation and location-based food purchasing guidance.

It will be appreciated and should be understood that the exemplaryembodiments of the invention described above can be implemented in anumber of different fashions. Given the teachings of the inventionprovided herein, one of ordinary skill in the related art will be ableto contemplate other implementations of the invention. Indeed, althoughillustrative embodiments of the present invention have been describedherein with reference to the accompanying drawings, it is to beunderstood that the invention is not limited to those preciseembodiments, and that various other changes and modifications may bemade by one skilled in the art.

1. A method for guideline-based food purchase management, wherein themethod comprises: generating a personalized set of one or more nutritionguidelines for a user; generating a user profile for the user, whereinthe user profile comprises health information and one or more nutritionpreferences; and using the personalized set of one or more nutritionguidelines and the user profile to generate a guideline-based shoppinglist for the user.
 2. The method of claim 1, wherein generating apersonalized set of one or more nutrition guidelines and generating auser profile comprise using Web-enabled questionnaires to collect andassess information pertaining to the user.
 3. The method of claim 2,wherein generating a personalized set of one or more nutritionguidelines further comprises using an assessment of the information toselect an appropriate set of one or more nutrition guidelines from anutrition guideline repository.
 4. The method of claim 3, whereingenerating a user profile further comprises using an assessment of theinformation and the appropriate set of one or more nutrition guidelinesto generate the user profile.
 5. The method of claim 1, wherein usingthe personalized set of one or more nutrition guidelines and the userprofile to generate a guideline-based shopping list comprises usinginformation pertaining to availability of one or more selected foodmarkets based on the personalized set of one or more nutritionguidelines.
 6. The method of claim 1, wherein using the personalized setof one or more nutrition guidelines and the user profile to generate aguideline-based shopping list comprises accessing a food market supplylist repository and dividing candidate food into one or more categoriessuch that food in a same category is interchangeable.
 7. The method ofclaim 1, wherein generating the guideline-based shopping list furthercomprises using additional user input pertaining to at least one of userbudget, travel distance of one or more stores, user preference of one ormore stores, and available coupons from one or more stores.
 8. Themethod of claim 1, wherein generating the guideline-based shopping listfurther comprises facilitating a user to interactively select one ormore items to purchase, and updating a food compliance report inreal-time and providing one or more food suggestions to the user basedon the one or more selected items.
 9. The method of claim 8, whereinupdating a food compliance report in real-time comprises using anutrition fact calculator to compute a total nutrition fact based on theone or more selected items and input from a nutrition fact database. 10.The method of claim 1, wherein using the personalized set of one or morenutrition guidelines and the user profile to generate a guideline-basedshopping list comprises accessing a food market supply list repositoryand filtering out one or more foods that are not suitable for the user.11. The method of claim 1, wherein the method for guideline-based foodpurchase management is implemented on a handheld mobile device.
 12. Themethod of claim 1, further comprising providing a system, wherein thesystem comprises one or more distinct software modules, each of the oneor more distinct software modules being embodied on a tangiblecomputer-readable recordable storage medium, and wherein the one or moredistinct software modules comprise a guideline manager module, a profilemanager module and a shopping list manager module executing on ahardware processor.
 13. A method for generating location-based foodpurchase guidance, wherein the method comprises: obtaining a shoppinglist of one or more food items and a list of one or more stores to beconsidered in connection with the one or more food items on the shoppinglist; using the shopping list, list of one or more stores, a storelocation map and inter-store routing guidance to generate an inter-storeshopping route; and generating an in-store shopping route, for each ofthe one or more stores in the inter-store shopping route, based on theshopping list of one or more food items, intra-store routing guidanceand a floor plan for the store.
 14. The method of claim 13, furthercomprising obtaining one or more user preferences in connection with theone or more stores.
 15. The method of claim 13, wherein generating anin-store shopping route further comprises using one or more userpreferences in connection with the intra-store guidance.
 16. The methodof claim 13, further comprising alerting a user of shopping informationbased on locations of the user.
 17. The method of claim 13, furthercomprising using a user-scanned barcode of an item during shopping, viaa barcode-based shopping cart tracker module, to check price and one ormore nutrition facts of the item.
 18. The method of claim 17, whereinusing a user-scanned barcode of an item during shopping furthercomprises tracking a total cost of one or more selected items.
 19. Themethod of claim 17, further comprising using the barcode-based shoppingcart tracker module during checkout to provide a shopping cart list to acheckout assistant module along with any coupons to be used to verify ifthe checkout is correct.
 20. The method of claim 17, wherein using auser-scanned barcode of an item during shopping to check one or morenutrition facts of the item comprises tracking real-time nutritioncompliance for a user.
 21. The method of claim 17, wherein using auser-scanned barcode of an item during shopping to check one or morenutrition facts of the item comprises using the one or more nutritionfacts of the item to suggest a substitute item.
 22. The method of claim1, further comprising providing a system, wherein the system comprisesone or more distinct software modules, each of the one or more distinctsoftware modules being embodied on a tangible computer-readablerecordable storage medium, and wherein the one or more distinct softwaremodules comprise an inter-store planner module and an intra-storeplanner module executing on a hardware processor.